var requests = require('../../requests/request.js');
var utils = require('../../utils/util.js');
//index.js
//获取应用实例
var app = getApp()
Page({
  data: {
    bannerData: [],     //banner、每日推荐
    newsListData: [],   //最新测试列表
    start: 0,           //上拉加载  从第几条开始加载
    pageSize: 5,        //每次加载的条数
    loadingmore: true   //没有更多
  },
  onLoad: function () {
    var that = this;
    //登录
    wx.checkSession({
      success: function () {
        // console.log('3rd_session没有过期')
        // session 未过期，并且在本生命周期一直有效
        wx.getStorage({   //如果缓存中有 3rd_session 取出给data赋值
          key: '3rd_session',
          success: function (res) {    //缓存中  3rd_session
            // console.log('有3rd_session')
          },
          fail: function () {    //如果缓存中  3rd_session
            //请求 普通帖
            console.log('没有3rd_session')
            utils.wxLogin();
          }
        })
      },
      fail: function () {
        //登录态过期
        utils.wxLogin(); //重新登录
      }
    })



    wx.showToast({
      title: '加载中',
      icon: 'loading',
      duration: 10000,
    })
    requests.requestBannerList(    //请求banner、每日推荐
      {}, (data) => {
        // console.log(data)
        setTimeout(function () {
          wx.hideToast()
        }, 1000)
        that.setData({
          bannerData: data
        })
      }, () => {
        //请求失败
      }, () => {
        //请求完成
      }
    )
    requsetNewsListData.call(that);   //请求最新试题列表
  },
  onReachBottom: function () {    //上拉加载
    // console.log('loading...')
    wx.showToast({
      title: '加载中...',
      icon: 'loading',
      duration: 1500,
    })
    requsetNewsListData.call(this);
  },
  onPullDownRefresh: function () {      //下拉刷新
    var that = this;
    requests.requestBannerList(    //请求banner、每日推荐
      {}, (data) => {
        console.log(data)
        setTimeout(function () {
          wx.hideToast()
        }, 1000)
        that.setData({
          bannerData: data
        })
      }, () => {
        //请求失败
      }, () => {
        //请求完成
      }
    )
    refreshNewsListData.call(that);   //请求最新试题列表
  },
  //跳转开始测试页面
  toStartPage: function (e) {
    var id = e.currentTarget.dataset.pageid;
    wx.navigateTo({
      url: '../starttest/starttest?id=' + id
    })
  }
})




//请求banner、每日推荐、最新列表数据
function requsetNewsListData() {
  var that = this;
  var newsListData = this.data.newsListData;
  var start = this.data.start;
  var pageSize = this.data.pageSize;
  requests.requestNewsList(
    {
      select_time: start,
      limit: pageSize
    },
    (res) => {   //请求成功回调
      // console.log(res)
      setTimeout(function () {
        wx.hideToast()
      }, 500)
      if (res.state) {
        wx.stopPullDownRefresh();
        that.setData({
          newsListData: newsListData.concat(res.list),
          start: res.select_time
        })
      } else {
        // console.log('没有更多帖子')
        // utils.showModal('提示','没有更多帖子',false);
        that.setData({
          loadingmore: false
        })
      }
    }, () => {
      //请求失败
    }, () => {
      //请求完成
    }
  )
}

//下拉刷新    请求banner、每日推荐、最新列表数据
function refreshNewsListData() {
  var that = this;
  var newsListData = this.data.newsListData;
  var start = this.data.start;
  var pageSize = this.data.pageSize;
  requests.requestNewsList(
    {
      select_time: 0,
      limit: pageSize
    },
    (res) => {   //请求成功回调
      // console.log(res)
      setTimeout(function () {
        wx.hideToast()
      }, 500)
      if (res.state) {
        wx.stopPullDownRefresh();
        that.setData({
          newsListData: res.list,
          start: res.select_time
        })
      } else {
        // console.log('没有更多帖子')
        // utils.showModal('提示','没有更多帖子',false);
        that.setData({
          loadingmore: false
        })
      }
    }, () => {
      //请求失败
    }, () => {
      //请求完成
    }
  )
}


